package model.dao;

import java.sql.SQLException;
import java.util.ArrayList;

import model.vo.theater.LocalInfoVO;
import model.vo.theater.PlayRoomVO;
import model.vo.theater.TheaterVO;

import com.ibatis.sqlmap.client.SqlMapClient;

public class TheaterDao {
	private SqlMapClient sqlMapClient;
	
	public void setSqlMapClient(SqlMapClient sqlMapClient) {
		this.sqlMapClient = sqlMapClient;
	}
	
	/**
	 * 클라이언트에서 받은 지역정보를 int 값으로 받아
	 * theater 테이블에서
	 * loc_no 컴럼 데이터를 조회하여
	 * 해당되는 영화관 정보를 ArrayList<TheaterVO> 타입으로 반환 받음
	 * @return
	 * @throws SQLException 
	 */
	public ArrayList<TheaterVO> loadTheaterListByLocalNo(int localNo) throws SQLException{
		System.out.println("TheaterDao.. loadTheaterListByLocalNo 메서드 동작");
		return (ArrayList<TheaterVO>) this.sqlMapClient.queryForList("theater.loadTheaterListByLocalNo",localNo);
	}
	
	/**
	 * 클라이언트에서 받은 영화관 정보를 int 값으로 받아
	 * PlayRoom 테이블에서
	 * theater_no 컴럼 데이터를 조회하여
	 * 해당되는 상영관 정보를 ArrayList<PlayRoomVO> 타입으로 반환 받음
	 * @param TheaterNo
	 * @return
	 * @throws SQLException
	 */
	public ArrayList<PlayRoomVO> loadPlayRoomListByTheaterNo(int TheaterNo) throws SQLException{
		System.out.println("TheaterDao.. loadPlayRoomListByTheaterNo 메서드 동작");
		return (ArrayList<PlayRoomVO>) this.sqlMapClient.queryForList("theater.loadPlayRoomListByTheaterNo",TheaterNo);
	}
	/**
	 * 지역정보를 로딩
	 * @return
	 * @throws SQLException
	 */
	public ArrayList<LocalInfoVO> getUsingLocList() throws SQLException {
		return (ArrayList<LocalInfoVO>)sqlMapClient.queryForList("theater.getUsingLocList");
	}
}
